#pragma once
#include <windows.h>
#include "def.h"

class EE_EXPORT string
{
private:
	char mpData[MAX_PATH]; 

public:
	string(); 
	string(const char* pData); 

	inline void concat(const char letter);
	inline void concat(const char* str); 
	inline void concat(const string& str); 

	inline void empty(); 
	inline int compare(string& str); 
	inline int compare(string& str) const; 

	inline bool equals(string& str, bool caseSensitive = false); 
	inline bool equals(const string& str, bool caseSensitive = false); 
	inline bool equals(string& str, bool caseSensitive = false) const; 
	inline bool equals(const char* str, bool caseSensitive = false); 
	inline bool equals(const char* str, bool caseSensitive = false) const; 

	inline int compare(const char* str); 
	inline int compare(const char* str) const; 

	inline uint length(); 
	inline uint length() const; 

	inline int findLastOf(const char character); 
	inline int findLastOf(const char character) const; 

	inline int find(const string& str); 
	inline int find(const string& str) const; 

	inline string substring(const int start, const int len); 
	inline string substring(const int start, const int len) const; 

	const char* c_str(); 
	const char* c_str() const; 

	inline bool IsValid() const; 
}; 
